<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>

	<body>
		开展一个投票征集活动，让网友投票选出本月最美的图片。根据网友的投票，每张图片有以下几种结果...

	</body>
	<script>
		//展示结果，如果不用状态模式就这么写：
		function showResult(resut) {
			if(result == 0) {
				//处理结果0
			} else if(result == 1) {
				//处理结果1
			} else if(result == 2) {
				//处理结果2
			} else if(result == 3) {
				//处理结果3
			}
		}

		//投票结果状态对象，运用状态模式
		var Resutlstate = function() { //判断结果保存在内部状态中
			var States = {
				//每种状态作为一种独立方法保存
				state0: function() {
					//处理结果0
					console.log('这是第一种情况')
				},
				state1: function() {
					//处理结果1
					console.log('这是第二种情况')
				},
				state2: function() {
					//处理结果2
					console.log('这是第三种情况')
				},
				state3: function() {
					//处理结果3
					console.log('这是第四种情况')
				}
			}
			//获取某一种状态并执行其对应的方法
			function show(result) {
				States['state' + result] && States['state' + result]();
			}
			return {
				//返回调用状态方法接口
				show: show
			}
		}();

		//调用第三种结果
		Resutlstate.show(3); //这是第四种情况
	</script>

</html>